import Vue from 'vue'
import App from './App.vue'

Vue.config.productionTip = false

// 三级联动组件
import TypeNav from '@/components/TypeNav';
Vue.component('TypeNav', TypeNav);
// 轮播图组件
import Carousel from '@/components/Carousel';
Vue.component('Carousel', Carousel);
// 分页器组件
import Pagination from '@/components/Pagination';
Vue.component('Pagination', Pagination);

// 引入路由
import router from '@/router'
// 引入仓库
import store from '@/store'
// 引入MockServe.js数据
import '@/mock/mockServe';
// 引入swiper样式
import 'swiper/css/swiper.css';
// 引入iconfont样式
import './assets/font_3496490_pcwfdzf5zso/iconfont.css';
// 统一引入接口api文件
import * as API from '@/api';

import { MessageBox } from 'element-ui';
//ElementUI注册组件的时候，还有一种写法，挂在原型上
Vue.prototype.$msgbox = MessageBox;
Vue.prototype.$alert = MessageBox.alert;

// 引入vue-lazyload插件
import VueLazyload from 'vue-lazyload';
import dongtu from '@/assets/dongtu.gif';
Vue.use(VueLazyload, {
  loading: dongtu
});


new Vue({
  render: h => h(App),
  beforeCreate() {
    // 全局事件总线配置
    Vue.prototype.$bus = this;
    Vue.prototype.$API = API;
  },
  router,
  store
}).$mount('#app')
